# --------------------------------------------------------------------------------------------------------------------
# Project:             Digital Payment System (DPS)
# Website:             http://code.google.com/p/dps-x509/
# Purpose of document: This file contains the dealer data
# --------------------------------------------------------------------------------------------------------------------# --------------------------------------------------------------------------------------------------------------------
# --------------------------------------------------------------------------------------------------------------------

class Dealer:
  """ this class simulates the role the house would play in this game """
  
  @staticmethod
  def privateKeyStr():
    privateKey = """{"primeExponentP": 
    "ANe7sE57jbmYMNCvsgpZ0yhf9LPASbTv0dGCXL8KE9qTJRpkW-F56l56Kph-YTI
     1wM1lGedrAUmxpygK34ID8yMyv1qEI-f1017Rz1rmjERGzD3RDQlqkBeR_diOl0
     6LYWTq9NQLh-1C_5pfB5BpMQXuPzpeGfmQlLt_pJIgS7VB", 
     "primeExponentQ": 
    "AHYSYRiyfum_Q4yyjD8fe2TANG6bIq7idpnkG7dpFZNcMQRZpDx0qmu3bTNFTSf
    6fl0b4_LUUWN7xi0FHtWCCAzeG9tvgSqrZre0qXQNPUuCxeTS7xF4R8DGXLC8NpV
    S4N46txwyi1jHsf2f-A9qPEtzPbCfz8-UxRk92_Q8BCWL", 
    "crtCoefficient": 
    "AIIgyy5F4CmrUai1NHGCvuB5GcnEjdkoaqqXbLQtWw1ILgSm6quSVE3N0-723_D
    _LuJEdT5zSAKfCSfHy5MU5W-nY9Nb6uftWzcSvEcY42sbsyHkRJfE_wQSqAr3e7w
    _iot0iMcRlGVy84CbSw5zwaE2EOPjECcVcxzq7IOFi0pT", 
    "privateExponent": 
    "ABlMjag9ug_WmUogKUOT02b8VEeRD9ytEv2KcHlKsN7VHkYSC4CJIrI0pTO0dJF
    NdGnO64Xncut33Ng55aU6hk8UuvwjmMQEm2uoZccJFWnUeYSHyZRqyr5CymUCCK1
    eWekie8tOvrgUaRYG6SOkFwFeb_sNH33IfUtf0qw-UKV-Nj6ct8ASE_M9IQwndV4
    qVFnBxhAqbMSq8tCoYwJVvJ0bOduDu1K7a_ujqlLqNdQjrnnFV4GlG1ZnpaXleCi
    4h3Zbwe2miCwM4xvhhh6lJ52xu3rewcjDYDUv0s4Mv5r30WN2Q1Wr46gYrfz_cVf
    0bxVaymspDR5lOJ1ZI2_X8YE", 
    "publicKey": 
    {"publicExponent": "AAEAAQ", 
    "modulus": 
    "AJ3codzWcyHSpKO7JymiCawALVVEvr6UIxCVtJSQP8yrCOzsRWHtBLAovSaTXy
    ytlammrWqo7ovUCXWS5h4t3E6O7kCnbC_OdVfELCbfhTnir8LN6gUHtMI_07tfk
    A9hdDoeAK1o4cWgoO2ABCgywyx4DOffTac6vkKRdxGMiajdpCvSJf_k-qXe_9A4
    yTG87hOqsfQhCD08D7WkOdfuBvZ300fYjYPDnUlS2x8jAG8p8bwGP1NWSUomGHZ
    cBaex_1HP0qiO49Xux2Ot_zgKMmf7Jh2XjawswUTx9RlGoIOzvUBNwqBChjPUGT
    OCxgZd4Y4JA24KUsXF5zvRJ2250Hs", "size": 2048}, 
    "primeQ": 
    "AKYMqc7rWRapU3kBL6_Q8iydlJi8wwdDXQAeh8jIx6JbgwnBJbDpDDbKcD7yVx
    P_7MrwshGGiohXunq1bPoWm8yMnTsZt9bNYrIghD37GKRofjcU8ic7CKWgw0EH5
    r0U1nK72aZYV9NSccEnn1sfEydm5Jp74SreWGwr0oD5lIu7", 
    "primeP": 
    "APNgh498oKgdw8yVpZd_jzKN8geFsXyATQAMnPlKzJ_1tFfgZ6wEBKxApIGLYQ
    aH0d3bM2OeOgWlDsY__hUkHkL7U69WR_rcTpVm7b791ScSAPafr5jPcKrZY9z-s
    MtJDM_JnG4U5YYCHDfIe9gdFzlXbh9WcsIuM5FgC4AjYqJB", 
    "size": 2048}"""
    
    return privateKey.replace("\n","")
  
  @staticmethod
  def x509CertBase64():
    return """MIIDKjCCAhKgAwIBAgIFAJCZl1EwDQYJKoZIhvcNAQEFBQAwGjEYMBYGA1UEAxMP
    Um91bGV0dGUgZGVhbGVyMB4XDTEwMDQyMjA1MzkwNFoXDTEzMDQyMjA1MzkwNFow
    GjEYMBYGA1UEAxMPUm91bGV0dGUgZGVhbGVyMIIBIjANBgkqhkiG9w0BAQEFAAOC
    AQ8AMIIBCgKCAQEAndyh3NZzIdKko7snKaIJrAAtVUS+vpQjEJW0lJA/zKsI7OxF
    Ye0EsCi9JpNfLK2Vqaataqjui9QJdZLmHi3cTo7uQKdsL851V8QsJt+FOeKvws3q
    BQe0wj/Tu1+QD2F0Oh4ArWjhxaCg7YAEKDLDLHgM599Npzq+QpF3EYyJqN2kK9Il
    /+T6pd7/0DjJMbzuE6qx9CEIPTwPtaQ51+4G9nfTR9iNg8OdSVLbHyMAbynxvAY/
    U1ZJSiYYdlwFp7H/Uc/SqI7j1e7HY63/OAoyZ/smHZeNrCzBRPH1GUagg7O9QE3C
    oEKGM9QZM4LGBl3hjgkDbgpSxcXnO9EnbbnQewIDAQABo3cwdTAUBglghkgBhvhC
    AQEBAf8EBAMCBLAwKgYDVR0lAQH/BCAwHgYIKwYBBQUHAwIGCCsGAQUFBwMDBggr
    BgEFBQcDBDAOBgNVHQ8BAf8EBAMCA7gwDwYDVR0TAQH/BAUwAwEB/zAQBgVVBKcI
    AwEB/wQELTEuMDANBgkqhkiG9w0BAQUFAAOCAQEAfmQAPMSlFwyzwMpBMZOIzeg8
    uEzx3G3QQCWhNkT3G70NU+u2uiWuyWxSoVY/NQqZ22UAlFaeaJ4ioMDzynbgKSYr
    BSMGV9f+r4QOzgvfySni8zhG99ZrPLF+c+oWJrmPesbw5HxG0drKODZ4r9rVrvhl
    10Kcd57E4QBi7Yp8Bv+8yx8Spkl5aHnDJPTJ53/cqLXQCt/xrioIhcNP8aErpclj
    83YraZy66nBDlm7IlTDBbPNlKu7/upoPqEIZQQxu7K/YypTDolTSSuRU1XhqjUFn
    B8QU++QqYsFzZ/lPye/HTevs52UDC6dq2jjJ2Ia+dHsrgLGu4pYUhLP5m2psgA=="""
  
  @staticmethod
  def csrBase64():
    return """MIICXTCCAUUCAQAwGjEYMBYGA1UEAxMPUm91bGV0dGUgZGVhbGVyMIIBIjANBgkq
    hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAndyh3NZzIdKko7snKaIJrAAtVUS+vpQj
    EJW0lJA/zKsI7OxFYe0EsCi9JpNfLK2Vqaataqjui9QJdZLmHi3cTo7uQKdsL851
    V8QsJt+FOeKvws3qBQe0wj/Tu1+QD2F0Oh4ArWjhxaCg7YAEKDLDLHgM599Npzq+
    QpF3EYyJqN2kK9Il/+T6pd7/0DjJMbzuE6qx9CEIPTwPtaQ51+4G9nfTR9iNg8Od
    SVLbHyMAbynxvAY/U1ZJSiYYdlwFp7H/Uc/SqI7j1e7HY63/OAoyZ/smHZeNrCzB
    RPH1GUagg7O9QE3CoEKGM9QZM4LGBl3hjgkDbgpSxcXnO9EnbbnQewIDAQABMA0G
    CSqGSIb3DQEBBQUAA4IBAQBA9VM3IWCpR4Csp3C08t/giV3I93t1K2YC0oNMemUZ
    7145u8wK3xWC4T6oeoEs0GN4rMa26uwzDykECTZZ9SsyrMONR0mDy5JGZC0c5INp
    E6XK2eaLRst4zlBsKbDXJ5r+2n0cMxuZ/DQS+UzDNlGbr7q7cKN6GqKB0KDaeNdH
    o+3+wmq1spSwStir1Uk+T7grIxtbm0RAUlr1mEqmQFC8yXzV/eICQIitM9fjztf1
    irHwsSe0IqA+n5cS/gSIcjBo4NSRky+PwbpX5VGsDlbl/qNE7K86kZ7MMrfC31TF
    SnWZMD9K4LHpn23uooGQgTGWZoCrquzn+3uzDeM4xBfn"""
